<?php

/**
 * @Table = funcionalidade
 * @Schema = seguranca
 */
class Funcionalidade {

    /**
     * @Serial
     * @Colmap = ide_funcionalidade
     */
    private $id;

    /**
     * @Colmap = nom_funcionalidade
     */
    private $nome;

    /**
     * @Colmap = des_funcionalidade
     */
    private $descricao;

    /**
     * @Colmap = des_status
     * @Persistence (type=texto,size=1)
     */
    private $status;

    /**
     * @Colmap = des_tipo
     * @Persistence (type=texto,NotNull=true,size=2)
     */
    private $tipo;

    /**
     * @Colmap = ide_funcionalidade_pai
     * @Relationship (objeto=Funcionalidade,type=OneToOne)
     * @Persistence (type=inteiro)
     */
    private $funcionalidadePai;

    /**
     * @Colmap = ide_usuario_criador
     */
    private $idUsuarioCriador;

    /**
     * @Colmap = dat_criacao
     */
    private $dataCriacao;

    /**
     * @Colmap = ide_usuario_atualizador
     */
    private $idUsuarioAtualizador;

    /**
     * @Colmap = dat_atualizacao
     */
    private $dataAtualizacao;

    /**
     * @Relationship (objeto=Perfil,type=ManyToMany,schema=seguranca,table=perfil__funcionalidade)
     */
    private $perfis;

    /**
     * @Relationship (objeto=VPerfil,type=ManyToMany,schema=seguranca,table=perfil__funcionalidade)
     */
    private $vPerfis;

    public function getId() {
        return $this->id;
    }

    public function setId($id) {
        $this->id = $id;
    }

    public function getNome() {
        return $this->nome;
    }

    public function setNome($nome) {
        $this->nome = $nome;
    }

    public function getDescricao() {
        return $this->descricao;
    }

    public function setDescricao($descricao) {
        $this->descricao = $descricao;
    }

    public function getStatus() {
        return $this->status;
    }

    public function setStatus($status) {
        $this->status = $status;
    }

    public function getTipo() {
        return $this->tipo;
    }

    public function setTipo($tipo) {
        $this->tipo = $tipo;
    }

    public function getFuncionalidadePai() {
        return $this->funcionalidadePai;
    }

    public function setFuncionalidadePai($funcionalidadePai) {
        $this->funcionalidadePai = $funcionalidadePai;
    }

    public function getIdUsuarioCriador() {
        return $this->idUsuarioCriador;
    }

    public function setIdUsuarioCriador($idUsuarioCriador) {
        $this->idUsuarioCriador = $idUsuarioCriador;
    }

    public function getDataCriacao() {
        return $this->dataCriacao;
    }

    public function setDataCriacao($dataCriacao) {
        $this->dataCriacao = $dataCriacao;
    }

    public function getIdUsuarioAtualizador() {
        return $this->idUsuarioAtualizador;
    }

    public function setIdUsuarioAtualizador($idUsuarioAtualizador) {
        $this->idUsuarioAtualizador = $idUsuarioAtualizador;
    }

    public function getDataAtualizacao() {
        return $this->dataAtualizacao;
    }

    public function setDataAtualizacao($dataAtualizacao) {
        $this->dataAtualizacao = $dataAtualizacao;
    }

    public function getPerfis() {
        return $this->perfis;
    }

    public function setPerfis($perfis) {
        $this->perfis = $perfis;
    }

    public function getVPerfis() {
        return $this->vPerfis;
    }

    public function setVPerfis($vPerfis) {
        $this->vPerfis = $vPerfis;
    }

}

?>